作者:手机用户2602937685 | 来源:互联网 | 2023-10-12 16:54
我有一个List
和一个List>
。像这样的例子:
List Label = new List{ 1,1 };
和
List> Matrix = new List>
{
new List{1.2,1.5,1.8},new List{1.5,1.8,1.2},new List{1.8,1.2,1.5}
};
我想要合并这些列表,并且我想要的输出就像:
1 1.2 1.5 1.8
0 1.5 1.8 1.2
1 1.8 1.2 1.5
另外,两个列表中的数据量始终相同。
您可以尝试一个简单的for
循环:
for (int r = 0; r Matrix[r].Insert(0,Label[r]); // we insert Label[r] item at 0th position
,
尽管我同意OP至少应该在提出这个问题之前发布他/她的尝试,但是我不能拒绝自己尝试。这是我使用Linq的尝试:
List Label = new List { 1,1 };
List> Matrix = new List>
{
new List{1.2,1.5,1.8},new List{1.5,1.8,1.2},new List{1.8,1.2,1.5}
};
var result = Label.Zip(Matrix,(l,m) => m.Prepend(l));
result
的类型为IEnumerable>
。该答案使用Zip()
通过将第一个列表(double
)中的元素放在第二个列表(List
)中的元素之前来组合两个列表
,
你在这里
@for(int i=0; i var val = Label.get(i); //get the corresponding value
Matrix[i].Insert(0,val); //insert val to beginning of this list entry
}